Blocky artifacts are problems in block-based motion compensation and/or transform coding algorithms used in many video codec standards. A block-based codec divides a video frame into various blocks and sub-blocks as sub-units in compression; thus, artifacts are apparent in the edges of the various blocks where a visible disconnect exists between the boundary of neighboring blocks. De-blocking filtering is needed to enhance the visual quality of block-based compression.
U.S. Pat. No. 7,778,480 B2, “Block Filtering System for Reducing Artifacts and Method,” to Huang et al. discloses one de-blocking filter to reduce blocking artifacts caused by block-based motion compensation algorithms and block coding algorithms. The de-blocking filter, based on bitstream information and image content analysis, is applied on an 8×8 block-grid to effectively reduce blocking artifacts while preserving visual quality of various elements of the frame, i.e. edges and texture details.
However, due to forward (recursive) motion compensation from frame to frame, blocky artifacts generated in one frame can be propagated to subsequent frames. This is especially apparent in code standards without in-loop filters. When a frame does not align to an original block-grid, as is when the frame is created by block-based motion compensation, the propagated blocky artifacts are also no longer aligned to the original block-grid but is decided by the amount of motion; hence, the blocky artifacts are off-grid.
Conventional de-blocking filters act on block-grids. While conventional filters are able to remove most of the on-grid blocky artifacts, off-grid blocky artifacts remain as undesirable distortion to the video, particularly in very low bit-rate internet compression.
Accordingly, there is a need in the art for a method and system to remove off-grid blocky artifacts generated by lossy video compression standards.